Media Recording Element

ABSTRACT

A media recording element having capabilities to facilitate recording media for subsequent playback. The recording element further including features associated with limited operations of a hard drive of other similarly mechanical memory under certain operating conditions so as to limit power consumption and/or memory degradation.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of co-pending U.S. application Ser. No. 11/561,541, filed Nov. 20, 2006 and entitled “Media Recording Element,” which is incorporated herein by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to media recording elements of the type having a hard drive or other mechanically operational element for storing media for subsequent playback to a media output device, such as but not limited to digital video recorders (DVRs).

2. Background Art

The use of various media recording element is becoming more and more prevalent. The media recording elements typically include a hard drive or other mechanically operational element having a rotating disc drive, head, reader, etc. for recording incoming content the subsequent playback. The content may be stored on hard drive for various lengths of time. One length of time may correspond with buffering operations.

Buffering operations generally correspond with a brief period of time where incoming content is written to and immediately thereafter read for output to a media output device. The buffering allows the content to be viewed in a live setting while also allowing a viewer to instigate so called DVR related operations on the buffered content, i.e. operations associated with but not limited to pausing, rewinding, recording, and slow playing the content.

The hard drive is constantly operational during the buffering phase in order to support the DVR related operations. This can be problematic in so far as the relatively constant operation of the hard drive may degrade its performance and lifetime and/or in so far as the constant operation negatively influences energy conservation.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention is pointed out with particularity in the appended claims. However, other features of the present invention will become more apparent and the present invention will be best understood by referring to the following detailed description in conjunction with the accompany drawings in which:

FIG. 1 schematically illustrates a media system in accordance with one non-limiting aspect of the present invention; and

FIG. 2 illustrates a flowchart of a method of controlling the media system in accordance with one non-limiting aspect of the present invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT(S)

FIG. 1 schematically illustrates a media system 10 in accordance with one non-limiting aspect of the present invention. The system 10 generally relates to any environment where a secondary memory 12 may be used for buffering incoming content so as to alleviate a primary memory 14 from having to buffer or otherwise sustain some or all of its normal activities while the incoming content is being processed by the system 10 for output to a viewer or other entity associated with the an output device 16.

The ability of the present invention to buffer the incoming content with the secondary memory 12 instead of the primary memory 14 allows the present invention to save energy consumption of and/or usage related degradation to the primary memory 14. This may help reduce overall system/operating cost and increase the useful life of the media storage system.

The primary memory 14 may include hard drives or other similar mechanically operational memories having moving elements to facilitate recording and playing back content, such as but not limited to memories having rotating discs and one or more moving heads (read/write). The secondary memory 12 may include any non-mechanically operational memory, such as but not limited to a static, flash, solid-state and/or other memory that does not include similar mechanically moving elements. Performing operations with the secondary memory 12 instead of the primary memory 14, at least when it may be advantageous to do so, alleviates operations of the mechanical elements of the primary memory 14, and thereby, lengthens its useful life and reduces system energy consumption.

The system 10 is generally described with respect to a digital video recorder (DVR) environment where the DVR outputs signals for playback to the media output device and/or the media device is integrated with the DVR. This is done for exemplary purposes only and without intending to limit the scope and contemplation of the present invention. The present invention, however, may be applicable to any number of other environments, including environments where the hard drive 14 and/or secondary memory 12 are integrated with and/or more remotely located from the media output device, including but not limited to personal media devices, mobile (IP/cellular) phones, media terminal adapters (MTAs), outlet digital adapters (ODAs), computers, etc.

Similarly, the present invention is predominately described with respect to facilitating short and/or long term recording and playback of cable television media. This is done for exemplary purposes only and without intending to limit the scope and contemplation of the present invention, as the present invention fully contemplates its use with any type of recordable media and not just media content associate with cable television environments, including but not limited to audio, video, images, data, etc.

The system 10 may include a tuner 18 for receiving wireline and/or wireless signals having the media content. The tuner 18 may encompass any device and/or combination of device, elements, and/or features associated with receiving electronic media content. The tuner 18 may be a RF and/or IP tuner/demultiplexer and may include any number of capabilities for locating and separately processing specific portions of the incoming signals.

For example, the tuner 18 may be a tuner commonly associated with receiving RF and/or IP based media content wherein multiple sets of media content or streams of media content may be simultaneously received, such as but not limited to receiving content associated with different channels or bandwidths carried of a single cable line. The timer 18 may be instructed and/or otherwise configured to locate desired content from the incoming content stream for further processing in accordance with present invention.

Optionally, the system 10 may be part of and/or operate in conjunction with a settop box (STB). The STB may include the tuner and include its own tuner for bypassing or facilitating operations of the tuner shown in the system. The STB may include conditional access features (CAS), authorized service domain (ASD), and/or other elements associated with descrambling, decrypting or otherwise limiting access and/or proliferation of the incoming content in accordance with the present invention. These and other features may be associated the incoming content and optionally carried with the content throughout the processing of the present invention so as to insure their continued operation.

The system 10 may include a diverter 20 for controlling and/or facilitating delivery of one or more (decrypted, descrambled, decoded, etc.) content streams associated with incoming content for processing in accordance with the present invention. The tuning of multiple content streams may be accomplished with the single illustrated tuner and/or with the cooperation of one or more additional tuners, i.e. to provide dual or multi-tuner operations.

The diverter 20 may encompass any device and/or combination of devices, elements, and/or features associated with diverting the electronic media content. The diverter 20 is shown as a standalone feature but it or the operations associated with it may be similarly integrated into the tuner 18, other element in the system, and/or some other non-illustrated or described element having the sufficient capabilities to divert or otherwise controllably facilitate the transmission of the desired content between the primary and secondary memory.

The system 10 may include a controller 22 to facilitate controlling the tuner, diverter, primary and secondary memories. The controller 22 may be a standalone controller, a software application, and/or other logically functioning element or feature having capabilities to execute the controls necessitated for the operations associated with the present invention. The controller may be configured to execute the controls of the present invention prior to deployment, such as but not limited to at the time or manufacturing the DVR, and/or otherwise instructed after deployment, such as but not limited to through code download or other operations, which may optionally be facilitated by a media provider associated with supporting the operations of the same.

As noted above, the primary memory 14 generally relates to a memory having mechanically operational and/or moving elements, such as but not limited to those commonly associate with a hard drive. The moving elements may be, but are not limited to, one or more rotating memory recoding discs and one or more corresponding sets of read/write elements. For example, in a single-tuning environment, i.e., where only a single content stream is recorded, the primary memory 14 may include a single rotating disc with a single set of read/write elements configured to facilitate reading and writing the content to and from the rotating disc. In a multi-tuner environment, i.e. where more than one content stream is recorded at the same time the, primary memory 14 may include one or more additional rotating disc for the additional content streams with correspondingly additional read/write elements and/or multiple read/write may be used in place of multiple discs so as to facilitate reading and writing each content stream.

The secondary memory 12 generally relates to a memory having none or limited mechanically moving elements, such as static and/or flash memories, such that the secondary memory 12 may be characterized as a non-hard disc drive memory. The secondary memory 12 may be partitionable in so far as portions of the memory may be dedicated or otherwise allocated to storing content for different periods of time and/or for different content streams.

The controller 22 may control memory allocation and other features and operations associated with storing and recovering content stored on the primary and secondary memories 12-14. This may include individually and separately controlling operations associated with the mechanical elements of the primary memory 14, i.e., the disc(s) and set(s) of read/write elements, including separately controlling each read/write element within a set, i.e., so as to permit one of the elements to be active the and the other to be inactive. This may also include separately allocation portions of the secondary memory 12 to each of the content streams and varying the allocation thereof as a function of operations of the primary memory 14.

The controller 22 may be configured to support and/or otherwise devised to support so called DVR related controls. The DVR related controls may relate to storing and playing content in response to DVR related events or other event generally associated with long term storage related controls that the short term memory of the secondary memory 12 may be unable to support. This may include but is not limited to recording, pausing, rewinding, slow playing, and any number of other operations associated with recording and playing back content, including but not limited to providing user interfaces, menus, and other features associated with supporting the same. The controller may be in communication with a remote control (not shown), STB, or other feature in order to determine occurrence of a DVR related event.

FIG. 2 illustrates a flowchart 30 of a method of controlling the media system in accordance with one non-limiting aspect of the present invention. The method is predominately described with respect to the system described above but the present invention is not intended to be so limited. The method, as noted above with respect to the system 10, may be used with and/or adapted for use with any system and in any number of environments. The method may be implemented in the controller 22 and used to control the features described above and/or implemented with some other executing feature having capabilities to process content in accordance with the present invention.

Block 32 relates to determining one or more content streams having content desired for processing in accordance with the present invention. This may include determining one or more content streams such that multiple portions of the secondary memory 12 and/or the primary memory 14 may be simultaneously active. As noted above, the term content stream is intended to include a form of electronic content transmission. The content stream determination may be made based on user inputs and/or other selections processes associated with identifying content, channels carrying the content, and other means associate with facilitating content retrieval.

Block 32 may further include associating the incoming content stream with portions of the primary memory 14 and the secondary memory 12. This may include the controller 22 associating a disc and set of write/read elements of the primary memory 14 to each content stream and partitioning the secondary memory 12 with respect to the different content streams. Discs and/or operations of the write/read elements of the primary memory 14 may be required in order to support controls associated with longer term storage that cannot be supported with the secondary memory 12. The allocation of the primary and secondary memories 12-14 may be necessary in order to simultaneously support processing multiple content streams.

Block 34 relates to determining occurrence of a buffering event. The buffering event may correspond with any event associated with conditions suitable for buffering content with the secondary memory 12 instead of the primary memory 14. DVR events, such as pausing, rewinding, recording, slow playing, fast playing, etc. are generally not considered as buffering events as primary memory 14 operations are generally required to support the operations, with the exception of recording or other functions which may include limited primary memory operations.

The secondary memory 12 may be a simple in/out memory in the sense that content is temporarily written to and read from the secondary memory 12 without the capabilities to support permanent or long term recording operations, rewind, long term pausing, and other events that required longer term memory storage, i.e., storage beyond that associated with a portion of the secondary memory 12 allocated by the controller 22 to the corresponding content stream.

For example, a portion of the secondary memory 12 may be allocated to each content stream determined in Block 32 such that the secondary memory 12 is only able to store content for the each content stream until the corresponding partition becomes full. Once the partition is full, the content is automatically outputted to the output device and/or the primary memory 14 so as to make room for the rest of the incoming content stream such that the secondary memory may be considered as an in/out or first-in-first-out memory in the sense that content is continuously moved in and out as long as content is being received for the corresponding partition.

As such, the buffering events generally correspond with any event or set of events having conditions suitable for use in at least temporarily storing the content in a first-in-first-out fashion or similar fashion with the secondary memory 12, i.e., conditions where limited in/out memory is acceptable. The present invention, therefore, contemplates any number of buffering events and is not intended to be limited to any particular event or set of events, including performing some limited DVR related controls with the secondary memory 12 if the secondary memory 12 includes sufficient memory or can be partitioned to include sufficient memory to facilitate such control, such as but not limited to pausing (if space available on secondary memory to support period of time associated with pausing), rewind (if content still stored on secondary memory), etc.

One particular buffering event of interest, however, relates to watching television or other incoming content streams in a live or relatively live setting such that the incoming content is buffered with the secondary memory 12 instead of the primary memory 14 until memory recording beyond the capabilities describe above with respect to the secondary memory 12 is needed. Another buffering event may relate to watching television and simultaneously recording the program being watched or another program showing on another channel, in which case the content may be diverted to the secondary memory 12 to support the live watching and simultaneously diverted to the primary memory 14 for permanent storage (as noted below, the read element of the primary memory 14 may be inactive in this condition so as to limited the number of active elements as the reading function is being performed by way of the secondary memory).

Block 36 relates to diverting one or more of the determined incoming content streams to the secondary memory 12 for storage and immediate output. This may include the controller 22 partitioning the secondary memory 12 based upon the number of content streams and/or reallocating the secondary memory 12 if one or more content streams are added or lost, i.e. if content streams are added then less memory may be available and if content streams are lost or not desired then more memory may be allocated. As such, Block 36 may relate to dynamically allocating the secondary memory 12 as a function of current and/or anticipated operating conditions.

Block 38 relates to deactivating one or more aspects of the primary memory 14 as a function of the content being buffered with the secondary memory 12. For non-recording events, this may include completely deactivating the primary memory 14 (or the portion of the primary memory 14 associated with supporting that content stream) such that the portion of the primary memory 14 is in a quiescent state, and for events such as recording and simultaneous watching, the corresponding read element may be deactivated. The deactivation of one or more aspect of the primary memory 14 allows to the present invention to limit activity and energy consumption of the primary memory.

Block 40 relates to outputting the content stream buffered with the secondary memory 12 to the media output device for viewing. This may optionally include outputting a single content stream from a single partition of the secondary memory and/or multiple content stream from multiple partitions of the secondary memory, such as but not limited to supporting picture-in-picture operations. The content streams may be outputted to any number of media devices, both local to and remote from the secondary memory.

Block 42 relates to continuously determining the occurrence of at least one buffering event, i.e., event associated with use of the secondary memory 12, for the content streams currently being buffered with the secondary memory 12. If the buffering event is active or a new buttering event replaced the previous event, Block 40 may be returned to continue outputting the content stream to the media output device. If buffering event ceases and a non-buffering event has occurred, i.e., a DVR related event, Block 44 is reached.

Block 44 relates to activating one or more of the deactivated aspects of the primary memory 14 associated with the content stream that is no longer experiencing a buffering event. This may include activating the corresponding disc, write element, and read element and/or some combination thereof, such as but not limited to activating only the read element if the corresponding disc and write element were already activated, which may occur during recording and simultaneous live watching of the content stream.

Block 46 relates to partitioning additional memory to compensate for delays associated with activating the previously deactivated aspect of the primary memory 14. The secondary memory 12 may include a relationship between allocated memory and an amount of time for which the content may be buffered due to the in/out nature of the memory such that additional memory may be allocated to cover the time it takes to ready the primary memory to begin storing the buffered content. Optionally, compression or other techniques may be used to prolong secondary memory storage in order to compensate for the activation delays of the primary memory 14.

Block 48 relates to diverting the content stream associated with Block 46 to the primary memory 14 in order to support more permanent storage, such as but not limited to supporting instigation of DVR related event. This may include outputting the content stored on the secondary memory 12 to the media output device and simultaneously diverting the incoming (new portions) of the content stream to the primary memory, wherefrom the primary memory may be used to output the content stream to the media output device in Block 50.

Block 52 relates to determining occurrence of a buffering event for the content being diverted to the primary memory. This analysis to be performed similarly to the analysis described above with respect to determining the buttering event. If a buffering event is not determined, Block 50 is returned to and the primary memory continues to output the content to the media output device. If a buffering event is determined, the content stream may be immediately diverted to the secondary memory 12. Because the secondary memory 12 does not necessarily include the same moving elements as the primary memory 14, the diversion can occur immediately by simply partitioning the secondary memory 12 to support the storage so as to avoid the delays associated with activating the inactive primary memory.

As described above, one non-limiting aspect of the present invention relates to limiting hard drive operations in DVRs or similar devices. One non-limiting aspect of the present invention relates to buffering content streams with a non-hard drive memory (secondary memory) and only routing content streams to the hard drive when DVR events are requested.

DVR hard drives are constantly recording content streams during television viewing in expectation of a DVR event, such as but not limited to rewind, pause, record, or similar DVR event requiring extended hard drive recording. Typically, the hard drive continuously buffers a minimal amount of content in expectation of the DVR event such that the hard drive is continuously recording. The continuous buffering of the hard drive can degrade its performance over time, as one skilled in the art will appreciate. One non-limiting aspect of the present invention proposes to ameliorate the constant recording with a secondary memory.

The secondary memory may be a static memory or other memory having capabilities sufficient to buffer the couple of seconds of content continuously buffered with the hard drive, including additional time associated with activating the hard drive. The content may be buffered through the secondary memory instead of the hard drive in order to free the hard drive from the continuous buffering. If a DVR event requiring long term recording occurs, the content stream may be diverted from the secondary memory to the hard drive. This allows the present invention to support all DVR events without requiring continuous hard drive operations.

Another non-limiting aspect of the present invention relates to dual-tuner DVRs and alleviating hard drive processing for multi-head hard drives. This would generally relate to buffering the content through multiple secondary memories and diverting therefrom as needed to support DVR events. This may lead to a multiple function environment when content is buffered to the secondary memory while other content is also written to the hard drive.

As required, detailed embodiments of the present invention are disclosed herein; however, it is to be understood that the disclosed embodiments are merely exemplary of the invention that may be embodied in various and alternative forms. The figures are not necessarily to scale, some features may be exaggerated or minimized to show details of particular components. Therefore, specific structural and functional details disclosed herein are not to be interpreted as limiting, but merely as a representative basis for the claims and/or as a representative basis for teaching one skilled in the art to variously employ the present invention.

While embodiments of the invention have been illustrated and described, it is not intended that these embodiments illustrate and describe all possible forms of the invention. Rather, the words used in the specification are words of description rather than limitation, and it is understood that various changes may be made without departing from the spirit and scope of the invention. 

1. A method comprising: causing, by a processor, storage of content associated with a media content stream to a first memory; causing storage of the content associated with the media content stream to a solid-state memory in response to a buffering event; and in response to inactivity of a portion of the first memory, causing output of the content associated with the media content stream from the solid-state memory.
 2. The method of claim 1, further comprising simultaneously causing storage of the content associated with the media content stream to the first memory and the content associated with the media content stream to the solid-state memory.
 3. The method of claim 1, further comprising causing deactivation of a read element of the first memory corresponding to the content associated with the media content.
 4. The method of claim 1, further comprising: causing storage of the content associated with the media content stream to the first memory in response to receiving a long-term storage related operation; and causing storage of the content associated with the media content stream to the solid-state memory in response to receiving a short-term storage related operation.
 5. The method of claim 1, further comprising dynamically partitioning the solid-state memory as a function of a number of media content streams that are received by the solid-state memory.
 6. The method of claim 1, further comprising generating the content associated with the media content stream in response to a long-term storage related operation.
 7. The method of claim 1, wherein the media content stream comprises internet protocol (IP) based media content.
 8. A method comprising: causing, by a processor, storage of content associated with a media content stream in a first memory and in a solid-state memory; and in response to a buffering event associated with a deactivation of a portion of the first memory, outputting the content associated with the media content stream from the solid-state memory.
 9. The method of claim 8, wherein causing the storage of the content associated with the media content stream comprises causing storage of a first portion of the content associated with the media content stream to the first memory and a second portion of the content associated with the media content stream to the solid-state memory.
 10. The method of claim 8, wherein causing the storage of the content associated with the media content stream comprises simultaneously causing storage of a copy of the content associated with the media content stream to the first memory and the copy of the content associated with the media content stream to the solid-state memory.
 11. The method of claim 8, further comprising: causing storage of the content associated with the media content stream to the first memory in response to receiving a long-term storage related operation; and causing storage of the content associated with the media content stream to the solid-state memory in response to receiving a short-term storage related operation.
 12. The method of claim 8, further comprising dynamically partitioning the solid-state memory as a function of a number of media content streams that are received by the solid-state memory.
 13. The method of claim 8, wherein the media content stream comprises internet protocol (IP) based media content.
 14. The method of claim 8, wherein the buffering event is associated with simultaneously recording and displaying content from the media content stream.
 15. A method comprising: causing, by a processor, storage of content associated with a media content stream to a solid-state memory; causing output of the content associated with the media content stream from the solid-state memory; and in response to receiving a long-term storage related operation, causing storage of the content associated with the media content stream to a first memory different than the solid-state memory.
 16. The method of claim 15, wherein causing storage of the content associated with the media content stream to the solid-state memory comprises causing storage of a first portion of the content associated with the media content stream to the solid-state memory, and wherein causing storage of the content associated with the media content stream to the first memory different than the solid-state memory comprises causing storage of a second portion of the content associated with the media content stream to the first memory.
 17. The method of claim 15, further comprising causing storage of the content associated with the media content stream to the solid-state memory in response to receiving a short-term storage related operation.
 18. The method of claim 15, further comprising dynamically partitioning the solid-state memory as a function of a number of media content streams that are received by the solid-state memory.
 19. The method of claim 15, wherein the media content stream comprises internet protocol (IP) based media content.
 20. The method of claim 15, further comprising causing output of a portion of the content associated with the media content stream from the solid-state memory to the first memory or to an output device in response to at least a partition of the solid-state memory being full. 